package cn.theten52.demo.patterns.design.behavior.memento.update1;

import java.io.Serializable;

/**
 * 状态
 *
 * @author wangjin
 * @date 2021/4/4
 */
public interface State extends Serializable, Cloneable {
    int value();

    State increase();

    State decrease();

    /**
     * 这步非常必要
     * 为确保保存状态的独立性，需要通过克隆方法获得一个当时备忘状态的副本
     */
    Object clone();
}